home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / jovept2.arc / JOVE.MAN < prev    next >
Encoding:
Text File  |  1985-05-30  |  50.1 KB  |  1,519 lines

  1.  
  2.  
  3.  
  4. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  5.  
  6.  
  7.  
  8. NAME
  9.      jove - Jonathan's Own Version of Emacs
  10.  
  11. SYNOPSIS
  12.      jove [-t tagname] [file1 file2 ... ]
  13.  
  14. DESCRIPTION
  15.      Jove is an interactive display oriented editor which  allows
  16.      one  to  modify text easily.  Jove stands for Jonathan's Own
  17.      Version of Emacs. This editor is  modeled  after  the  EMACS
  18.      written  at  MIT  by  Richard   Stallman.  Jove has tried to
  19.      stick to the conventions of real EMACS, but has strayed away
  20.      from  them in several places.  The real EMACS is extensible,
  21.      which means the user can change the way the  editor  behaves
  22.      to  his  own liking. He can do this by changing the commands
  23.      that each key invokes or by writing new commands.   Although
  24.      new  commands  cannot  be written in jove, existing commands
  25.      can be bound to any key. There are several concepts  a  user
  26.      needs to understand before he can use the editor to his full
  27.      advantage. The three most important are buffers, windows and
  28.      command binding.
  29.  
  30.      In most cases, Jove is used to edit already existing  files.
  31.      Jove  reads  files  into  buffers.   A  buffer is where Jove
  32.      stores its version of the file; changes made in  the  editor
  33.      are  made to the buffer, not the original file.  If the user
  34.      makes a change but wishes he did not,  he can simply  reread
  35.      the  file  from  the  disk  into a fresh buffer.  If Jove is
  36.      given no files to edit it creates an empty  buffer  with  no
  37.      file associated with it.  When the user has finished editing
  38.      and is satisfied with his changes, he can save the buffer to
  39.      a  file with the write-named-file command. This command asks
  40.      for a file name and writes the contents  of  the  buffer  to
  41.      that file.  Once a buffer is written to a file, the old ver-
  42.      sion of the file is gone forever, so be careful!! Jove  com-
  43.      plains  if  the buffer is modified and an attempt is made to
  44.      leave before saving the changes.  It says  Modified  buffers
  45.      exists.   Leave anyway?.  Answering no to this question will
  46.      leave the user in the  editor  so  that  he  can  write  the
  47.      buffers he wishes.  If he wants to exit, e.g. he made a mis-
  48.      take, he should answer yes.
  49.  
  50.      The current position in a buffer is called the  point.   The
  51.      point  should  not  be  thought  of as being on a character,
  52.      rather as being between two characters, namely the character
  53.      before the cursor and the character under the cursor.
  54.  
  55.      Jove supports multiple buffers.  This means that  more  than
  56.      one  file  can be edited at a time, each file having its own
  57.      buffer.  Jove remembers what each buffer looks like while it
  58.      is  not  in use.  This makes it possible to jump around from
  59.      one buffer to another without losing any  previous  changes,
  60.  
  61.  
  62.  
  63. Printed 4/18/85                                                 1
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  71.  
  72.  
  73.  
  74.      and  without  having  to  save  the  changes each time a new
  75.      buffer is selected.  Each buffer has its own set of  charac-
  76.      teristics  that  jove  also remembers, so switching from one
  77.      buffer to another can change the  way  the  editor  behaves.
  78.      Jove  uses windows to show what the buffer looks like at any
  79.      time.
  80.  
  81.      Often files are too large to fit in the terminals screen all
  82.      at  once.   While in the editor, the screen acts as a window
  83.      into a buffer, always showing what the  buffer  looks  like.
  84.      If the point moves past the top or bottom of the window, the
  85.      window moves to where the point has moved.   When a line  is
  86.      too  long to fit on the terminal, jove shows this by putting
  87.      an ! at the end of the line.  Moving the point to a position
  88.      that is off the screen horizontally causes the line contain-
  89.      ing the point to be scrolled to the right or the  left  such
  90.      that  the  point  is visible.  Only the current line is ever
  91.      scrolled.  If the line containing the point is scrolled  and
  92.      the  point  moves  to  a  different  line, the scrolled line
  93.      automatically moved back to its normal position.  The window
  94.      reflects what is being done as it is being done, so what you
  95.      see is ALWAYS what you get.
  96.  
  97.      Initially there is only one window, but it  is  possible  to
  98.      divide  a  window so that there are two smaller windows. The
  99.      smaller windows are exactly the same as the original  window
  100.      except for the amount of the buffer each can show at a time.
  101.      Sometimes the same buffer will be shown  in  more  than  one
  102.      window,  and other times there will be a different buffer in
  103.      each window.
  104.  
  105.      There are many commands built into jove.  There is a command
  106.      handler  in jove that prompts for commands. When the name of
  107.      a command typed in is unambiguous, that command will be exe-
  108.      cuted.  Since it is very slow to have to type in the name of
  109.      each command every time it is needed, jove makes it possible
  110.      to  bind commands to keys.  When a command is bound to a key
  111.      any future hits on that key will invoke that  command.   All
  112.      the  printing characters are initially bound to the function
  113.      self-insert so that typing any one of the  printing  charac-
  114.      ters  causes  it  to  be inserted into the text.  Any of the
  115.      existing commands can be bound to any key.  Since there  are
  116.      more  commands  than there are keys, two keys are treated as
  117.      prefix commands.  When a key bound to one of the prefix com-
  118.      mands  is  typed, the next character typed is interpreted on
  119.      the basis that it was preceded by one of  the  prefix  keys.
  120.      Initially  ^X  and  ESC are the prefix keys, and as you will
  121.      see, many of the built in commands are  initially  bound  to
  122.      these "two stroke" keys.
  123.  
  124.      Users will likely want to modify the default key bindings to
  125.      his  liking.   Since it would be quite a pain to have to set
  126.  
  127.  
  128.  
  129. Printed 4/18/85                                                 2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  137.  
  138.  
  139.  
  140.      up the bindings each time jove is  started  up,  jove  reads
  141.      commands  from  the  file  if they were typed to the command
  142.      handler during an edit.  There can be only one  command  per
  143.      line  in  the  init file.  The source command can be used to
  144.      read commands from a specified  file.   This  means  that  a
  145.      macro  can be used to change the key bindings, e.g. to enter
  146.      a mode, by reading from a specified file which contains  all
  147.      the new bindings.
  148.  
  149.      Jove is invoked by simply typing jove to either shell or  C-
  150.      shell.   If arguments are provided on the command line, jove
  151.      treats each as a file to be read, and reads it into its  own
  152.      buffer.   The current buffer will be the first file read in,
  153.      and the point will be at the beginning of the buffer.  There
  154.      is  one exception.  If jove sees a -t on the command line it
  155.      takes the next word to be a C tag and reads in the file con-
  156.      taining  that tag.  Inexperienced users need not worry about
  157.      that though.  At the bottom of each window is the mode  line
  158.      associated with that window.  A typical mode line might look
  159.      like this:
  160.  
  161.         JOVE (TE)   Buffer: jove.1   "jove.1" *
  162.  
  163.      The  mode  line  always  says  JOVE.   The  TE  inside   the
  164.      parentheses means the editor is in text-fill mode (see modes
  165.      below).  In this example the name of the  buffer  is  jove.1
  166.      and  the  name  inside the quotes is the file.  In this case
  167.      the file is jove.1; in general the buffer name and the  file
  168.      name  are  the  same. The * at the end of the line indicates
  169.      that the buffer has been modified but not saved.   The  very
  170.      bottom  line  on  the  screen  is the message line.  This is
  171.      where jove prints any messages and where  jove  prompts  the
  172.      user  for  more  input.  For example, when the user wants to
  173.      save his buffer, jove would ask for a file name  to  use  on
  174.      this line.
  175.  
  176.      Once invoked, Jove is ready  to  accept  commands  from  the
  177.      user.   Most of the editor commands move the point around in
  178.      the buffer and others change what  the  buffer  looks  like.
  179.      These  commands  operate on single characters, words, lines,
  180.      and on regions.  One of the more common editor  commands  is
  181.      the self-insert command.
  182.  
  183.      The self-insert command simply inserts  the  character  that
  184.      invoked  it into the buffer at the point.  Because the point
  185.      is really between two characters, inserting a  character  at
  186.      point  pushes  all the characters, from the point to the end
  187.      of the line, over to the right to  make  room  for  the  new
  188.      character.  The  point  moves  one to the right staying just
  189.      ahead of the newly inserted character.  This means  that  if
  190.      the  user wants to insert a word, he can just type the word.
  191.      If the point did not move  as he typed,  he  would  have  to
  192.  
  193.  
  194.  
  195. Printed 4/18/85                                                 3
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  203.  
  204.  
  205.  
  206.      move  forward  a character after each letter of the word was
  207.      typed.  Characters which are not self inserting, for example
  208.      those  which are other editor commands, also can be inserted
  209.      but must be quoted first. This is done with  the  quote-char
  210.      command  which  inserts  the  next character typed no matter
  211.      what character it is.
  212.  
  213.      CONTROL-Q (that is the CTRL key typed with the Q key at  the
  214.      same  time)  is  an  example  of a control character.  ^Q is
  215.      short hand for CONTROL-Q.  Many of the editor  commands  are
  216.      bound  to control keys initially since the rest of the char-
  217.      acters are self-inserting.  Escape characters are  different
  218.      from  control  character  in that they are typed in two keys
  219.      strokes, namely the ESC key followed by any other  key.   If
  220.      there  is  not  a  command  bound  to the escape <character>
  221.      sequence, the editor will complain.
  222.  
  223.      The commands forward-character  and  backward-character  are
  224.      bound to the keys ^F and ^B respectively.  They move forward
  225.      and backward one character position in the buffer.  The com-
  226.      mands  forward-word  and backward-word are bound to the keys
  227.      ESCAPE-F and ESCAPE-B respectively.  They are  the  same  is
  228.      the  ^F  and  ^B commands except that they operate on words.
  229.      The commands next-line and previous-line  are  examples  are
  230.      commands  that  operate  on  lines.  There are commands that
  231.      delete text in units of characters, words, and  lines  also.
  232.      delete-next-character  deletes the character after point and
  233.      delete-previous-character  deletes  the   character   before
  234.      point.   delete-next-word  and  delete-previous-word are the
  235.      same as the two delete character functions except that  they
  236.      operate on words.
  237.  
  238.      Sometimes it is useful to run a command a specific number of
  239.      times,  for example to move down 10 lines, the sequence ESC-
  240.      10-^N will work, if the ^N is bound to  the  next-line  com-
  241.      mand.   In general, ESCAPE followed by a number, followed by
  242.      a command, runs that command number times.  This  is  called
  243.      giving the command a numeric argument, or providing a prefix
  244.      argument. Some of the commands ignore numeric arguments, for
  245.      example  read-file, but most of the commands use the numeric
  246.      argument.
  247.  
  248.      A region is defined as all the text between two buffer posi-
  249.      tions.   Marks  provides a way to remember a position in the
  250.      buffer other than the point.  The set-mark  command  sets  a
  251.      mark  to  where  the  point  is  at  the time the command is
  252.      invoked.  Once a mark is set, the user can  move  the  point
  253.      anywhere  else  and later use various commands to manipulate
  254.      the mark.  Aside from delimiting the  region,  the  mark  is
  255.      also  useful  for remembering a spot that you may want to go
  256.      back to.  To make this feature more useful,  JOVE  remembers
  257.      19  previous  locations of the mark.  Most commands that set
  258.  
  259.  
  260.  
  261. Printed 4/18/85                                                 4
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  269.  
  270.  
  271.  
  272.      the mark push the old mark onto this stack.  To return to  a
  273.      marked location, invoking the set-mark command with a prefix
  274.      argument (e.g. ^U-^@) will do.   This  moves  the  point  to
  275.      where  the mark was, and restores the mark from the stack of
  276.      former marks.  So repeated use of this command  moves  point
  277.      to all of the old marks on the stack, one by one.  Since the
  278.      stack  is actually a ring, enough uses of  ^U-^@  bring  the
  279.      point back to where it was originally.  PP.  It is sometimes
  280.      necessary to get from one  place  in  a  buffer  to  another
  281.      quickly.   Using  the  primitive motion commands would work,
  282.      but would be rather slow. Search commands  provide  a  quick
  283.      and  easy way to move over large portions of text.  The user
  284.      is prompted for a string to search for.  The  search  starts
  285.      from  the  point,  so  forward  searches  will  not find any
  286.      matches that are before the point, and reverse searches will
  287.      not  find  any  matches  after the point.  If the search was
  288.      forward and the editor manages to find the string, the point
  289.      moves  to the end of the string.  If the search was backward
  290.      and the editor finds the string,  the  point  moves  to  the
  291.      beginning of the string. Otherwise the user will be informed
  292.      of the failure and left where he was.  Jove supports regular
  293.      expressions  also, but they are rather complicated. For com-
  294.      plete documentation see ed(1) in  the  UPM.  Another  useful
  295.      command is the replace-search command.  This command prompts
  296.      the user for a search string, then prompts for a replacement
  297.      string,  and  then searches the buffer for the search string
  298.      replacing all occurrences with the replacement string.
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327. Printed 4/18/85                                                 5
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  335.  
  336.  
  337.  
  338.      Here is a list of all the commands, with a short description
  339.      of each and the key that the command is initially bound to.
  340.  
  341.      Prefix-1                      ESC
  342.  
  343.      The next character typed will be interpreted  on  the  basis
  344.      that  it  was preceded by the command Prefix-1.  This is one
  345.      of two such commands whose purpose in life  is  to  increase
  346.      the  number  of  commands that can be bound to keys and thus
  347.      easily invoked.
  348.  
  349.      Prefix-2                      ^X
  350.  
  351.      The next character typed will be interpreted  on  the  basis
  352.      that  it  was preceded by the command Prefix-2.  This is one
  353.      of two such commands whose purpose in life  is  to  increase
  354.      the  number  of  commands that can be bound to keys and thus
  355.      easily invoked.
  356.  
  357.      append-region                 [unbound]
  358.  
  359.      Appends the region bounded by the  point  and  mark  to  the
  360.      named file.  If the file does not exist it is created.
  361.  
  362.      apropos(keyword)              ESC-?
  363.  
  364.      Lists available commands having to do with the keyword.
  365.  
  366.      backward-character            ^B
  367.  
  368.      Moves the point backward one character in  the  buffer.   If
  369.      the  point  is  at the beginning of the line, it moves it to
  370.      the end of the previous line.
  371.  
  372.      backward-paren                ESC-^B
  373.  
  374.      This moves  the  point  to  the  matching  open  parenthesis
  375.      (brace)  of  the  close  parenthesis (brace) just before the
  376.      point.  If there is no match, an error is reported  and  the
  377.      point remains unchanged.
  378.  
  379.      backward-word                 ESC-B
  380.  
  381.      If in the middle of a word, the point moves to the beginning
  382.      of  the word.  Otherwise it moves the point to the beginning
  383.      of the previous word.
  384.  
  385.      beginning-of-file             ESC-<
  386.  
  387.      Moves the point to the beginning of the  current  buffer  so
  388.      that the character after the point is the first character of
  389.      the buffer.
  390.  
  391.  
  392.  
  393. Printed 4/18/85                                                 6
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  401.  
  402.  
  403.  
  404.      beginning-of-line             ^A
  405.  
  406.      Moves the point to the beginning of the current line.
  407.  
  408.      beginning-of-sentence         ESC-A
  409.  
  410.      Moves the point to the beginning of the current sentence.
  411.  
  412.      beginning-of-window           ESC-,
  413.  
  414.      Moves the point to the first character in the window.
  415.  
  416.      bind-macro-to-key             [unbound]
  417.  
  418.      Binds a macro to a key so that future hits on that key  will
  419.      run the macro.
  420.  
  421.      bind-to-key                   [unbound]
  422.  
  423.      Binds a command to a key so that future  hits  on  that  key
  424.      will run the command.  For example, the command next-line is
  425.      bound to the key ^N.
  426.  
  427.      buffer-position               [unbound]
  428.  
  429.      Prints the line and column  of  the  point  in  the  current
  430.      buffer.
  431.  
  432.      case-region-lower             ^X-^L
  433.  
  434.      Changes all the letters between the point and mark to  lower
  435.      case.
  436.  
  437.      case-region-upper             ^X-^U
  438.  
  439.      Changes all the letters between the point and mark to  upper
  440.      case.
  441.  
  442.      case-word-capitalize          ESC-C
  443.  
  444.      If the point is in the middle of a word, it capitalizes  the
  445.      letter  after  the point and changes the rest of the word to
  446.      lower case.  Otherwise it capitalizes the  first  letter  of
  447.      the  next  word  and  changes the rest of this word to lower
  448.      case.  In any case the point is left at the end of the word.
  449.  
  450.      case-word-lower               ESC-L
  451.  
  452.      If the point is in the middle of a word, it changes the rest
  453.      of  the  word  to lower case.  Otherwise it changes the next
  454.      word to lower case.  In either case the point is left at the
  455.      end of the effected word.
  456.  
  457.  
  458.  
  459. Printed 4/18/85                                                 7
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  467.  
  468.  
  469.  
  470.      case-word-upper               ESC-U
  471.  
  472.      If the point is in the middle of a word, it changes the rest
  473.      of  the  word  to upper case.  Otherwise it changes the next
  474.      word to upper case.  In either case the point is left at the
  475.      end of the effected word.
  476.  
  477.      char-to-octal-insert          [unbound]
  478.  
  479.      Reads a character from the terminal and  inserts  its  octal
  480.      value  preceded  by  a  back-slash '\', into the text at the
  481.      point.  For example if  the  character  ESC  is  typed,  the
  482.      string \033 is inserted.
  483.  
  484.      clear-and-redraw              ESC-^L
  485.  
  486.      Clears and redraws the screen without  changing  the  screen
  487.      orientation.   This is useful if the screen gets garbaged by
  488.      output from another program or by someone writing you.
  489.  
  490.      compile-it                    ^X-^E
  491.  
  492.      Writes all the modified buffers and runs  the  UNIX  program
  493.      make  into  a  buffer called Errors.  After the make is com-
  494.      pleted, the buffer is parsed for C type error messages to be
  495.      used by the next-error command.
  496.  
  497.      copy-region                   ESC-W
  498.  
  499.      Does a pretend kill of the region bounded by the  point  and
  500.      mark.   The  next  call  to  yank  will yank the region just
  501.      copied.
  502.  
  503.      c-tab                         [unbound]
  504.  
  505.      When in c-mode, the command c-tab is automatically bound  to
  506.      the  tab  key,  and when invoked, the point is tabbed to the
  507.      "right" place for C programs.
  508.  
  509.      delete-next-char              ^D
  510.  
  511.      The character after the point is deleted moving the rest  of
  512.      the  line  to the left one, leaving the point unchanged.  If
  513.      at the end of the line, the line boundary is deleted joining
  514.      the current line with the next line.
  515.  
  516.      delete-next-word              ESC-D
  517.  
  518.      If the point is in the middle of a word, it deletes  to  the
  519.      end of the word.  Otherwise it deletes the entire next word.
  520.      In either case, the point doesn't move, and the deleted text
  521.      is saved in the kill buffer.
  522.  
  523.  
  524.  
  525. Printed 4/18/85                                                 8
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  533.  
  534.  
  535.  
  536.      delete-other-windows          ^X-1
  537.  
  538.      Makes the current window the only window by deleting all the
  539.      other windows.  The window grows to fill the screen as it is
  540.      when the editor starts up.
  541.  
  542.      delete-previous-char          DELETE
  543.  
  544.      Deletes the character before the point moving  the  rest  of
  545.      the  line to the left one.  If the point is at the beginning
  546.      of a line, the previous line is joined with the current line
  547.      and  the  point  is  moved to what used to be the end of the
  548.      previous line.
  549.  
  550.      delete-previous-word          ESC-DELETE
  551.  
  552.      If the point is in the middle of a word, it deletes  to  the
  553.      beginning  of  that  word.   Otherwise it deletes the entire
  554.      previous word.  In either case, the deleted text is saved in
  555.      the kill buffer.
  556.  
  557.      delete-to-killbuffer          ^W
  558.  
  559.      Deletes all the text between the point and mark,  saving  it
  560.      in  the  kill-buffer.   This  is one of the the ways to move
  561.      text from place in the buffer to another.  The yank  command
  562.      will  insert  the  most  recently deleted text at the point.
  563.      Jove remembers 10 separate kills in a kill ring.  The  yank-
  564.      pop  command  can  be  used  to go through the ring one at a
  565.      time.
  566.  
  567.      delete-white-space            ESC-\f1
  568.  
  569.      Deletes all tabs and space around the point on  the  current
  570.      line.  This does not work over line boundaries.
  571.  
  572.      describe-command              [unbound]
  573.  
  574.      Prompts for the name of a command  and  describes  what  the
  575.      command does into a buffer.
  576.  
  577.      describe-key                  ^X-^D
  578.  
  579.      Prompts for a key and prints the command that  is  bound  to
  580.      that key.
  581.  
  582.      delete-current-window         ^X-D
  583.  
  584.      If there is more than one window on the screen, the  current
  585.      window  is  deleted and is moved to neighboring window.  The
  586.      space from the deleted window is given to  the  new  current
  587.      window.
  588.  
  589.  
  590.  
  591. Printed 4/18/85                                                 9
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  599.  
  600.  
  601.  
  602.      end-of-file                   ESC->
  603.  
  604.      Moves the point to the end of the buffer making the  charac-
  605.      ter before the point the last character in the buffer.
  606.  
  607.      end-of-line                   ^E
  608.  
  609.      Moves the point to the end of the current line.
  610.  
  611.      end-of-sentence               ESC-E
  612.  
  613.      Moves the point to the end of the sentence.
  614.  
  615.      end-of-window                 ESC-.
  616.  
  617.      Moves the point to the last character in the window.
  618.  
  619.      erase-buffer                  [unbound]
  620.  
  621.      Prompts for a buffer name, and deletes all the text in  that
  622.      buffer.   If  the  buffer is modified, the user is asked for
  623.      confirmation.
  624.  
  625.      exchange-point-and-mark       ^X-^X
  626.  
  627.      Sets the mark to the point and the point to the mark.
  628.  
  629.      execute-extended-command      ESC-X
  630.  
  631.      Prompts for a command to run using command completion.  This
  632.      is  how all commands would be run if not for the bind-to-key
  633.      command.
  634.  
  635.      execute-keyboard-macro        ^X-E
  636.  
  637.      All the characters that  were  remembered  with  the  start-
  638.      remembering  command  are  executed as if they were typed at
  639.      the keyboard.
  640.  
  641.      execute-macro                 [unbound]
  642.  
  643.      This is the same as execute-keyboard-macro  except  that  it
  644.      prompts for the name of a macro to execute.
  645.  
  646.      exit-jove                     ^X-^C
  647.  
  648.      Exits jove.  It asks for confirmation if there are any modi-
  649.      fied buffers which have not been saved.
  650.  
  651.      filter-region                 [unbound]
  652.  
  653.  
  654.  
  655.  
  656.  
  657. Printed 4/18/85                                                10
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  665.  
  666.  
  667.  
  668.      Prompts for a UNIX command to send a region to.  The  region
  669.      will  be  replaced  with  the  output from the command.  For
  670.      example to format a C procedure, a region  around  the  pro-
  671.      cedure  should be defined and the filter-region command used
  672.      to send the region through the UNIX C beautifier.
  673.  
  674.      find-file                     ^X-^F
  675.  
  676.      Prompts for a file to find.  If that file is not already  in
  677.      a  buffer,  it  creates a new buffer and reads the file into
  678.      that buffer.  If the file is already in another buffer, that
  679.      buffer  will  be selected instead.  In any event the current
  680.      buffer becomes buffer with that file in it.
  681.  
  682.      find-file-into-other-window   ^X-4
  683.  
  684.      Do a find file into another window.  If there  is  only  one
  685.      window,  is split.  If there is more than one window, one of
  686.      the windows that is not the current window is used instead.
  687.  
  688.      find-tag                      ^X-^T
  689.  
  690.      Finds the file with the C tag which is  prompted  for.   The
  691.      UNIX  program  ctags(1)  should be used to create a database
  692.      with the necessary information to find the file  which  con-
  693.      tains  the  tag.   If the tag cannot be found, the point and
  694.      buffer are unchanged.
  695.  
  696.      first-non-blank               ESC-M
  697.  
  698.      Moves the point to the first  non  blank  character  in  the
  699.      current line.
  700.  
  701.      forward-char                  ^F
  702.  
  703.      Moves the point forward one character in the buffer.  If  at
  704.      the end of the current line the point is moved to the begin-
  705.      ning of the next line.
  706.  
  707.      forward-paren                 ESC-^B
  708.  
  709.      Moves the point to the matching close parenthesis (brace) of
  710.      the  open  parenthesis  (brace)  right  after the point.  If
  711.      there is no match,  an  error  is  reported  and  the  point
  712.      remains unchanged.
  713.  
  714.      forward-word                  ESC-F
  715.  
  716.      If the point is in the middle of a word, it moves to the end
  717.      of  the  current word.  Otherwise it moves to the end of the
  718.      next word.
  719.  
  720.  
  721.  
  722.  
  723. Printed 4/18/85                                                11
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  731.  
  732.  
  733.  
  734.      four-times                    ^U
  735.  
  736.      Multiple the numeric argument by four.  The sequence  ^U-^U-
  737.      ^N runs the command next-line 16 times.
  738.  
  739.      goto-line                     ESC-G
  740.  
  741.      Moves the point to the numeric argument line in the  buffer.
  742.      If no argument is supplied, the the point moves to the first
  743.      line in the buffer.
  744.  
  745.      grow-window                   ^X-^
  746.  
  747.      Makes the current window one line larger if it  can.   There
  748.      has  to  be more than one window, and the window which would
  749.      get smaller has to be big enough to get smaller.
  750.  
  751.      i-search-forward              [unbound]
  752.  
  753.      Incremental search forward.  See the EMACS Manual for TWENEX
  754.      Users if you care about this command.  I do not have time to
  755.      explain it right now.
  756.  
  757.      i-search-reverse              [unbound]
  758.  
  759.      Incremental search reverse.  See the EMACS Manual for TWENEX
  760.      Users if you care about this command.  I do not have time to
  761.      explain it right now.
  762.  
  763.      insert-file                   ^X-^I
  764.  
  765.      If the named file exists and can be read, its  contents  are
  766.      inserted into the current buffer at the point.  Otherwise an
  767.      error is reported and the point is unchanged.
  768.  
  769.      init-bindings                 [unbound]
  770.  
  771.      Initialize the bindings to the way they were at  the  begin-
  772.      ning of the edit.
  773.  
  774.      justify-paragraph             ESC-J
  775.  
  776.      Justifys a paragraph.  Paragraphs are bounded by blank lines
  777.      or  lines that begin with a period.  The margin-length vari-
  778.      able determines the length of each line in the paragraph.
  779.  
  780.      kill-buffer                   ^X-K
  781.  
  782.      Deletes a named buffer.  This  command  is  not  reversible;
  783.      once  the buffer is deleted, it is gone forever.  It is use-
  784.      ful when the editor runs out of space and there is a  buffer
  785.      which you do not care about.
  786.  
  787.  
  788.  
  789. Printed 4/18/85                                                12
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  797.  
  798.  
  799.  
  800.      kill-to-end-of-line           ^K
  801.  
  802.      Kill all the text from the point to the end of the line.  If
  803.      the  point  is  at  the end of the line, the current line is
  804.      joined with the next line.  If a numeric count is given, the
  805.      next  count lines are deleted.  The saved test can be yanked
  806.      back with the yank command (see  delete-to-killbuffer).   If
  807.      this command is run several times in a row all the kills are
  808.      merged into the same kill ring entry, thus running the  yank
  809.      command  will yank all of them back instead of just the last
  810.      one.
  811.  
  812.      list-buffers                  ^X-^B
  813.  
  814.      Creates a buffer called Buffer list that contains a list  of
  815.      all the buffers jove currently knows about.  Each line tells
  816.      each buffer's number, type, file  associated  with  it,  its
  817.      name, and a * if the buffer is modified.
  818.  
  819.      make-buffer-unmodified        ESC-~
  820.  
  821.      Makes the editor forget that the buffer has  been  modified.
  822.      The * on the mode line will disappear if it is there.
  823.  
  824.      name-keyboard-macro           [unbound]
  825.  
  826.      A new macro is defined with the name supplied by  the  user.
  827.      The  current definition of the keyboard macro is copied into
  828.      this new macro, making it possible change the keyboard macro
  829.      without  losing  the old version.  Now it is possible to run
  830.      the new macro by binding the macro to a  key,  or  with  the
  831.      execute-macro  command.   Note  that  only  named macros are
  832.      saved with the write-macros-to-file command, so to  remember
  833.      macros  from  one jove to another, one must give the macro a
  834.      name, execute the  write-macros-to-file  command,  and  upon
  835.      invokation of a new jove, the read-macros-from-file" command
  836.      should be executed.
  837.  
  838.      newline                       [unbound]
  839.  
  840.      Divides the current line at the point moving  the  point  to
  841.      the  beginning  of  the  newly  created line.  It is usually
  842.      bound to the return key.
  843.  
  844.      newline-and-backup            ^O
  845.  
  846.      Divides the current line at the point like the newline  com-
  847.      mand, but leaves the point unchanged.
  848.  
  849.      newline-and-indent            [unbound]
  850.  
  851.  
  852.  
  853.  
  854.  
  855. Printed 4/18/85                                                13
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  863.  
  864.  
  865.  
  866.      Same as newline except that it inserts white  space  at  the
  867.      beginning  of the newline copying the indent of the previous
  868.      line.
  869.  
  870.      next-error                    ^X-^N
  871.  
  872.      Takes the next error message (as returned by the parse  com-
  873.      mands), finds the file in which the error occurred, and sets
  874.      the the point to the line on which the error occurred.   The
  875.      error  message  will  be  displayed at the top of the errors
  876.      buffer.  (The  compile-it  command  automatically  runs  the
  877.      parse-C-errors and the next-error commands).
  878.  
  879.      next-line                     ^N
  880.  
  881.      Moves the point to the next line keeping the column as close
  882.      to the current column as possible.
  883.  
  884.      next-page                     ^V
  885.  
  886.      Puts the bottom line of the window at the top of the window,
  887.      moving  the point to the top of the window and to the begin-
  888.      ning of the line.
  889.  
  890.      next-window                   ^X-N
  891.  
  892.      Moves to the next window in the screen.  If the current win-
  893.      dow is the last window, it moves to the first window.  It is
  894.      an error to move to the next window when there is  only  one
  895.      window on the screen.
  896.  
  897.      number-lines-in-window        [unbound]
  898.  
  899.      Each line in the current window is displayed with  its  line
  900.      number to the left.  The number isn't part of the buffer and
  901.      will disappear when this command is executed again (it  tog-
  902.      gles).
  903.  
  904.      page-next-window              ESC-^V
  905.  
  906.      This command does a next-page on the next window.  If  there
  907.      is only one window the editor complains.
  908.  
  909.      paren-flash                   [unbound]
  910.  
  911.      When  the  variable  show-match  is  non-zero,   the   close
  912.      parenthesis/brace  keys  are  bound  to  this command.  When
  913.      invoked, this command inserts the character typed  and  tem-
  914.      porarily  flashes to the matching open parenthesis/brace for
  915.      about one second.
  916.  
  917.      parse-C-errors                [unbound]
  918.  
  919.  
  920.  
  921. Printed 4/18/85                                                14
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  929.  
  930.  
  931.  
  932.      This command takes C compiler (or similar in format)  errors
  933.      and  sets  the  editor  up for subsequent invocations of the
  934.      next-error command.  Giving the UNIX command grep(1) the  -n
  935.      option  prints  the  output in the same format as the C com-
  936.      piler, thus running this command into a buffer makes it pos-
  937.      sible to parse its output. This is a very useful way to look
  938.      at all the occurrences of certain strings in several files.
  939.  
  940.      parse-LINT-errors             [unbound]
  941.  
  942.      This is the  same  as  parse-C-errors  excepts  parses  lint
  943.      errors.
  944.  
  945.      pause-jove                    [unbound]
  946.  
  947.      If the system has the Berkeley job control features, control
  948.      is  returned  to  the superior shell.  Otherwise an inferior
  949.      shell is spawned.
  950.  
  951.      previous-line                 ^P
  952.  
  953.      Moves the point to the previous  line  trying  to  keep  the
  954.      column the same.
  955.  
  956.      previous-page                 ESC-V
  957.  
  958.      Moves the top line in the window to the bottom line leaving,
  959.      the  point  at the top of the window and at the beginning of
  960.      the line.
  961.  
  962.      previous-window               ^X-P
  963.  
  964.      Move to the previous window in the screen.  If currently  in
  965.      the  first window, moves to the last window.  It is an error
  966.      to move to the previous window when there is only one window
  967.      on the screen.
  968.  
  969.      print                         [unbound]
  970.  
  971.      Prompts for a variable name and prints its value.
  972.  
  973.      query-replace-search          ESC-Q
  974.  
  975.      Upon receipt of a search and replacement string, the  editor
  976.      replaces  all  occurrences  of  the  search  string with the
  977.      replacement string.  For each occurrence the editor asks the
  978.      user what to do.  The choices are:
  979.  
  980.              ' '     to replace this occurrence.
  981.                                    '.'to replace and stop.
  982.              DELETE  to skip this occurrence.
  983.              'r'     to recursive edit.
  984.  
  985.  
  986.  
  987. Printed 4/18/85                                                15
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  995.  
  996.  
  997.  
  998.              'p'     to proceed to replace all occurrences.
  999.              RETURN  to stop
  1000.  
  1001.      When there are no more occurrences, the point is moves  back
  1002.      to  its  initial position.  Recursive edit makes it possible
  1003.      to temporarily suspend  the  query-replace-search,  let  the
  1004.      user  go  off  and  do  some editing, and then return to the
  1005.      search after the editing is finished.  Executing the command
  1006.      exit-jove returns from the recursive edit.
  1007.  
  1008.      quote-char                    ^Q
  1009.  
  1010.      Quotes the next character typed for insertion.  This is used
  1011.      to  insert special characters which normally would be inter-
  1012.      preted as commands.
  1013.  
  1014.      read-file                     ^X-^R
  1015.  
  1016.      Prompts for a file to read into the current buffer.  It will
  1017.      erase  the  old contents so if the buffer has been modified,
  1018.      but not saved, jove complains and ask for confirmation.
  1019.  
  1020.      read-macros-from-file         [unbound]
  1021.  
  1022.      Prompts for a file that  was  previously  written  with  the
  1023.      write-macros-to-file  command,  and reads them back into the
  1024.      editor.
  1025.  
  1026.      redraw-display                ^L
  1027.  
  1028.      Redraws the window with the current line in the middle.   If
  1029.      a  numeric argument is provided the current line is moved to
  1030.      the argument line. If the current line is in the same  place
  1031.      as before, the window is cleared and redrawn.
  1032.  
  1033.      reinitialize-terminal
  1034.  
  1035.      If the value of the  variable  allow-^S-and-^Q  is  changed,
  1036.      this  command should be called to make the necessary changes
  1037.      to the terminal.
  1038.  
  1039.      replace-search                ESC-R
  1040.  
  1041.      This is the same as query-replace-search except  the  editor
  1042.      does not ask whether to replace it; it always does.
  1043.  
  1044.      ring-the-bell                 ^G
  1045.  
  1046.      Exactly what is says.  Its useful when it  is  not  apparent
  1047.      what the editor is currently doing.
  1048.  
  1049.      scroll-one-line-down          ESC-Z
  1050.  
  1051.  
  1052.  
  1053. Printed 4/18/85                                                16
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  1061.  
  1062.  
  1063.  
  1064.      Scrolls the current window down one line.   If  the  current
  1065.      line  moves off the bottom of the window, it is moved to the
  1066.      middle of the window.
  1067.  
  1068.      scroll-one-line-up            ^Z
  1069.  
  1070.      Scrolls the current window up one line.  If the current line
  1071.      moves  off the bottom of the window, it is moved to the mid-
  1072.      dle of the window.
  1073.  
  1074.      search-forward                ^S
  1075.  
  1076.      Prompts for a string to search for and searches for the next
  1077.      instance of that string in the buffer (see searching above).
  1078.  
  1079.      search-reverse                ^R
  1080.  
  1081.      Prompts for a string to search for and searches for the pre-
  1082.      vious  instance  of that string in the buffer (see searching
  1083.      above).
  1084.  
  1085.      select-buffer                 ^X-B
  1086.  
  1087.      Prompts for a buffer name and makes that buffer the  current
  1088.      buffer.   If  the  buffer  does  not  exist  a new buffer is
  1089.      created with nothing in it.  If a number is supplied instead
  1090.      of  a name and a buffer exists with that number, that buffer
  1091.      is selected.  Otherwise a new buffer is  created  with  that
  1092.      number as a name.
  1093.  
  1094.      self-insert                   [very-bound]
  1095.  
  1096.      This is bound to all the keys that should be  inserted  when
  1097.      typed.   This  commands does not work unless bound to a key.
  1098.      Running this command manually will probably cause  a  random
  1099.      character to be inserted.
  1100.  
  1101.      set                           [unbound]
  1102.  
  1103.      Prompts for a variable name and a value, and sets the  vari-
  1104.      able to that value.
  1105.  
  1106.      set-mark                      ^@
  1107.  
  1108.      Sets mark to the current buffer location.
  1109.  
  1110.      shell-command                 ^X-!
  1111.  
  1112.      Prompts for a UNIX shell command to be run placing the  out-
  1113.      put from the command into a buffer called Command execution.
  1114.      If the a numeric argument is provided, the  buffer  is  left
  1115.      alone  before  the  UNIX  command is started.  Otherwise the
  1116.  
  1117.  
  1118.  
  1119. Printed 4/18/85                                                17
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  1127.  
  1128.  
  1129.  
  1130.      buffer is emptied.
  1131.  
  1132.      shell-command-to-buffer       [unbound]
  1133.  
  1134.      The same as shell-command except that it asks for a specific
  1135.      buffer to place the output in instead of Command execution.
  1136.  
  1137.      source                        [unbound]
  1138.  
  1139.      This prompts for a file name which contains a bunch of  edi-
  1140.      tor  commands.   These  commands  typically set variables or
  1141.      bind commands to keys.  Running source on a file which  does
  1142.      not  have editor commands in it will likely cause the editor
  1143.      to crash.  This is a serious bug.
  1144.  
  1145.      shrink-window                 ^X-Z
  1146.  
  1147.      Shrink the current window by one line if the resulting  win-
  1148.      dow would not be too small.  It is an error to run this com-
  1149.      mand when there is only one window.
  1150.  
  1151.      spell-buffer                  [unbound]
  1152.  
  1153.      Sends the entire buffer to the  UNIX  spell  program.   Jove
  1154.      will go through the list of spelling errors and asks whether
  1155.      or not a word is spelled correctly.   If  it  is  not,  jove
  1156.      remembers  where  each occurrence of the misspelled word is.
  1157.      The point in the buffer being spelled is positioned  at  the
  1158.      end  of  the current misspelled word. The next-error command
  1159.      moves to the next occurrence of the current word, or to  the
  1160.      first occurrence of the next word.
  1161.  
  1162.      split-current-window          ^X-2
  1163.  
  1164.      Splits the current window into two smaller windows,  if  the
  1165.      resulting  windows  would not be too small.  The two windows
  1166.      have the same buffer associated with them,  namely  the  one
  1167.      that the original window had.
  1168.  
  1169.      start-remembering             ^X-(
  1170.  
  1171.      This tells jove to start remembering all the following keys-
  1172.      trokes  until the stop-remembering command is executed.  The
  1173.      saved commands are saved in the keyboard macro, and  can  be
  1174.      re-executed  with  the execute-keyboard-macro command.  This
  1175.      is useful when it is necessary to run the same command  lots
  1176.      of times.
  1177.  
  1178.      stop-remembering              ^X-)
  1179.  
  1180.      This terminates the  definition  of  a  macro.   See  start-
  1181.      remembering for more details.
  1182.  
  1183.  
  1184.  
  1185. Printed 4/18/85                                                18
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  1193.  
  1194.  
  1195.  
  1196.      string-length                 ^X-C
  1197.  
  1198.      Prints, on  the  message  line,  the  number  of  characters
  1199.      between  two quotes. The point must be between two quotes or
  1200.      the editor complains.  This  is  useful  for  C  programmers
  1201.      especially.
  1202.  
  1203.      suspend-jove                  [unbound]
  1204.  
  1205.      Same as pause-jove.
  1206.  
  1207.      text-insert                   [unbound]
  1208.  
  1209.      When the variable text-fill  is  non-zero,  the  self-insert
  1210.      keys  are  bound  to  this command.  This inserts characters
  1211.      like self-insert does but when the line gets  to  a  certain
  1212.      length,  a newline is automatically inserted.  This makes it
  1213.      possible to type in a paper without having  to  remember  to
  1214.      hit return, i.e the editor does it automatically.
  1215.  
  1216.      transpose-char                ^T
  1217.  
  1218.      Switches the characters on  opposite  sides  of  the  point,
  1219.      namely  the  character  before  the cursor and the character
  1220.      under the cursor.
  1221.  
  1222.      unbound                       [unbound]
  1223.  
  1224.      The unbound function is bound to all the keys that don't run
  1225.      commands.  It is essentially a no-op.
  1226.  
  1227.      visit-file                    ^X-^V
  1228.  
  1229.      Same as the sequence split-current-window followed  by  exe-
  1230.      cuting find-file.
  1231.  
  1232.      vt100-arrow-keys              [unbound]
  1233.  
  1234.      This makes the arrow keys work on the vt100 terminal.
  1235.  
  1236.      write-current-file            ^X-^S
  1237.  
  1238.      This writes the current buffer to the file  associated  with
  1239.      the  buffer,  without asking.  If there is currently no file
  1240.      associated with the buffer, the editor complains.  (See  the
  1241.      write-named-file command below).
  1242.  
  1243.      write-macros-to-file          [unbound]
  1244.  
  1245.      Prompts for a file and writes all the current defined macros
  1246.      to  that  file.  The macros can be read back into the editor
  1247.      with the read-macros-from-file command.
  1248.  
  1249.  
  1250.  
  1251. Printed 4/18/85                                                19
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  1259.  
  1260.  
  1261.  
  1262.      write-modified-files          ^X-^M
  1263.  
  1264.      Writes all the buffers that have been modified but not  been
  1265.      saved.
  1266.  
  1267.      write-named-file              ^X-^W
  1268.  
  1269.      Prompts for a file name and writes  the  current  buffer  to
  1270.      that file. If the file already exists and is not the current
  1271.      file name, the user is informed and asked if he really wants
  1272.      to  do  it.   Writing  a file erases the old contents of the
  1273.      file.
  1274.  
  1275.      write-region                  [unbound]
  1276.  
  1277.      Takes the region between the point and the mark  and  writes
  1278.      it to a named file.
  1279.  
  1280.      yank                          ^Y
  1281.  
  1282.      Inserts, at the point, all the text that was  most  recently
  1283.      deleted with a delete command that saves the text it deleted
  1284.      to the kill ring.   The  point  moves  to  the  end  of  the
  1285.      inserted region.
  1286.  
  1287.      yank-pop                      ESC-Y
  1288.  
  1289.      Goes through the kill ring inserting each  entry  one  at  a
  1290.      time.   The  previous command has to have been the yank com-
  1291.      mand or the yank-pop command.
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317. Printed 4/18/85                                                20
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  1325.  
  1326.  
  1327.  
  1328.      The following are list of variables which change the way the
  1329.      editor behaves.  All the variables, and the effect they have
  1330.      on the behavior of the editor, are listed below.  When  cer-
  1331.      tain variables are set to non-zero values, jove prints their
  1332.      abbreviations (in parentheses) on the mode line.
  1333.  
  1334.      allow-^S-and-^Q
  1335.      When set to non-zero, jove  disables  the  stop  (XOFF)  and
  1336.      start (XON) characters, thus making it possible to bind edi-
  1337.      tor commands to those keys.  Most often, the ^S and ^Q  keys
  1338.      are  the  stop  and  start characters, which means when this
  1339.      variable is set, search-forward can  be  bound  to  ^S,  and
  1340.      quote-char  can be bound to ^Q, like they are supposed to be
  1341.      bound.
  1342.  
  1343.      auto-indent                   (AI)
  1344.      This variable affects the way the RETURN key works. Normally
  1345.      typing RETURN divides the current line at point moving point
  1346.      down to the next line. That still happens in this  mode  but
  1347.      the  line is automatically indented the same as the previous
  1348.      line. This is useful  for  structure  programming  languages
  1349.      like C and PASCAL.
  1350.  
  1351.      c-mode                        (C)
  1352.      This mode the tab character and  the  }.   Instead  of  just
  1353.      inserting the tab, the editor determines where the tab ought
  1354.      to be for the C language and tabs  to  there  instead.   The
  1355.      same  thing  happens  with the close brace.  It is tabbed to
  1356.      the right place and then inserted.
  1357.  
  1358.      case-independent-search       (CIS)
  1359.      This affects the way search works.  When in this mode,  jove
  1360.      ignores  the difference between upper case and lower case so
  1361.      A matches a as well as A.
  1362.  
  1363.      internal-tabstop              (not-shown)
  1364.      This tells jove how many spaces a tab should take up when it
  1365.      is printed.  The default is 8.
  1366.  
  1367.      magic                         (MA)
  1368.      This mode makes regular expression available.  This  is  not
  1369.      the default because for new users because certain characters
  1370.      in the search strijng do not always do  what  they  normally
  1371.      would.
  1372.  
  1373.      make-all-at-once
  1374.      Tells the editor to run make with the -k option when running
  1375.      the compile-it command.
  1376.  
  1377.      over-write                    (OV)
  1378.      This mode changes the way  self-inserting  characters  work.
  1379.      Instead  of pushing the rest of the line over, the character
  1380.  
  1381.  
  1382.  
  1383. Printed 4/18/85                                                21
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  1391.  
  1392.  
  1393.  
  1394.      after the point is replaced.
  1395.  
  1396.      physical-tapstop
  1397.      This tells jove how big the tabstops are  for  the  specific
  1398.      terminal.   When the terminal is in tabs mode (see stty(1)),
  1399.      jove will take advantage of that fact, and optimize the cur-
  1400.      sor motion using tabs.
  1401.  
  1402.      right-margin                  (not-shown)
  1403.      This is used by the justify-paragram command, and  says  how
  1404.      long it should try to make each line.
  1405.  
  1406.      show-match                    (SM)
  1407.      This affects the close parenthesis (brace) characters.  When
  1408.      one  of those is typed in this mode it is inserted normally.
  1409.      Then the cursor flashes to  the  matching  open  parenthesis
  1410.      (brace)  for  one second and then move back to point. If the
  1411.      match was not on the screen, nothing happens.  If  there  is
  1412.      no match the user is informed of the error.
  1413.  
  1414.      single-scroll
  1415.      This changes the way the editor behaves when the point moves
  1416.      out of the range of a window.  Instead of centering the line
  1417.      containing the point, the editor leaves the line at the top,
  1418.      or  bottom  of  the screen (depending on which end the point
  1419.      moved off).  This is useful if the terminal is running at  a
  1420.      slow baud rate.
  1421.  
  1422.      text-fill                     (TF)
  1423.      When in this mode, the editor will automatically insert car-
  1424.      riage returns when lines reach the right margin. The default
  1425.      right-margin is 72.
  1426.  
  1427.      write-files-on-make           (not-shown)
  1428.      When non-zero, jove writes all the modified buffers when the
  1429.      compile-it command is invoked (default is non-zero).
  1430.  
  1431.      To put the editor on one of these modes, use  the  set  com-
  1432.      mand.  The set command prompts for one of the mode variables
  1433.      to set.  A non-zero value means the mode is on, and a  value
  1434.      or 0 means the mode is off.
  1435.  
  1436.         JOVE (C-SM-AI)   Buffer: jove.c   "jove.c" *
  1437.  
  1438.      If in these modes, typing } would cause the } to be indented
  1439.      before  inserted,  and  then  the  cursor would flash to the
  1440.      matching {.
  1441.  
  1442. FILES
  1443.      /usr/tmp     where the temporary files are stored.
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449. Printed 4/18/85                                                22
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456. JOVE(LSRHS)         Unix Programmer's Manual          JOVE(LSRHS)
  1457.  
  1458.  
  1459.  
  1460. SEE ALSO
  1461.      edt(1), ed(1).
  1462.  
  1463. DIAGNOSTICS
  1464.      Jove diagnostics are meant to be self explanatory.
  1465.  
  1466. BUGS
  1467.      It doesn't garbage collect the tmp file so it could run  out
  1468.      of tmp space when it doesn't have to.
  1469.  
  1470.      There should be one bind-to-key command that works for  both
  1471.      macros and built in commands.
  1472.  
  1473.      There should be a way to abort read-file and the search com-
  1474.      mands.
  1475.  
  1476.      Jove should not blow up when it tries to source a file which
  1477.      doesn't have editor commands in it.
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515. Printed 4/18/85                                                23
  1516.  
  1517.  
  1518.  
  1519.